/*
 * @Description:
 * @Version: V1.1
 * @Author: Troubadour
 * @Date: 2022-09-17 17:46:53
 * @LastEditors: Troubadour
 * @LastEditTime: 2022-09-25 22:24:09
 */

#ifndef  __ROBOTCTRL_HPP__
#define  __ROBOTCTRL_HPP__

#include <Arduino.h>
#include "RobotServoFw.hpp"
#if !(defined(ESP8266) || defined(ESP32))
#include <Arduino_FreeRTOS.h>
#endif

// #define ROBOT_DELAY_MS(ms)          delay(ms)
/* 使用协程时开启以下宏 */
#define ROBOT_DELAY_MS(ms)          vTaskDelay(ms / portTICK_PERIOD_MS)

/* 移动式脚抬起幅度 */
#define ROBOT_UP_ANGLE      300

class RobotCtrl:public RobotServoFw
{
private:

public:
    RobotCtrl();
    RobotCtrl(HardwareSerial &Handle);
#if !(defined(ESP8266) || defined(ESP32))
    RobotCtrl(SoftwareSerial &Handle);
#endif
    ~RobotCtrl();

    void RobotReset(void);
    void Robot_DollyMoves(int16_t offset);
    void Robot_TuruACorner(int16_t offset);
};








#endif  /* __ROBOTCTRL_HPP__ */
